##base _SDLBase
##bias 30
* The SDL interface
##public
* general
SDL_Init(flags)(d0)
SDL_Quit()()
SDL_InitSubSystem(flags)(d0)
SDL_QuitSubSystem(flags)(d0)
SDL_WasInit(flags)(d0)
* rwops
SDL_RWFromFile(file,mode)(a0/a1)
SDL_RWFromFP(fp,autoclose)(a0/d0)
SDL_RWFromMem(mem,size)(a0/d0)
SDL_AllocRW()()
SDL_FreeRW(area)(a0)
* video
SDL_LoadBMP_RW(src,freesrc)(a0/d0)
SDL_DisplayFormat(surface)(a0)
SDL_FreeSurface(surface)(a0)
SDL_FillRect(dst,dstrect,color)(a0/a1/d0)
SDL_UpperBlit(src,srcrect,dst,dstrect)(a0/d0/a1/d1)
SDL_Flip(screen)(a0)
SDL_UpdateRects(screen,numrects,rects)(a0/d0/a1)
SDL_UpdateRect(screen,x,y,w,h)(a0/d0/d1/d2/d3)
SDL_GetVideoInfo()()
SDL_SetVideoMode(width,height,bpp,flags)(d0/d1/d2/d3)
SDL_MapRGB(format,r,g,b)(a0/d0/d1/d2)
SDL_MapRGBA(format,r,g,b,a)(a0/d0/d1/d2/d3)
SDL_VideoDriverName(namebuf,maxlen)(a0/d0)
SDL_GetVideoSurface()()
SDL_VideoModeOK(width,height,bpp,flags)(d0/d1/d2/d3)
SDL_ListModes(format,flags)(a0/d0)
SDL_SetGamma(red,green,blue)(d0/d1/d2)
SDL_SetGammaRamp(red,green,blue)(d0/d1/d2)
SDL_GetGammaRamp(red,green,blue)(d0/d1/d2)
SDL_SetColors(surface,colors,firstcolor,ncolors)(a0/a1/d0/d1)
SDL_SetPalette(surface,flags,colors,firstcolor,ncolors)(a0/d0/a1/d1/d2)
SDL_GetRGB(pixel,format,r,g,b)(d0/a0/d1/d2/d3)
SDL_GetRGBA(pixel,format,r,g,b,a)(d0/a0/d1/d2/d3/d4)
SDL_CreateRGBSurface(flags,width,height,depth,Rmask,Gmask,Bmask,Amask)(d0/d1/d2/d3/d4/d5/d6/d7)
SDL_CreateRGBSurfaceFrom(pixels,width,height,depth,pitch,Rmask,Gmask,Bmask,Amask)(a0/d0/d1/d2/d3/d4/d5/d6/d7)
SDL_LockSurface(surface)(a0)
SDL_UnlockSurface(surface)(a0)
SDL_SaveBMP_RW(surface,dst,freedst)(a0/a1/d0)
SDL_SetColorKey(surface,flag,key)(a0/d0/d1)
SDL_SetAlpha(surface,flag,alpha)(a0/d0/d1)
SDL_SetClipRect(surface,rect)(a0/a1)
SDL_GetClipRect(surface,rect)(a0/a1)
SDL_ConvertSurface(src,fmt,flags)(a0/a1/d0)
SDL_DisplayFormatAlpha(surface)(a0)
* overlay
SDL_CreateYUVOverlay(width,height,format,display)(d0/d1/d2/a0)
SDL_LockYUVOverlay(overlay)(a0)
SDL_UnlockYUVOverlay(overlay)(a0)
SDL_DisplayYUVOverlay(overlay,dstrect)(a0/a1)
SDL_FreeYUVOverlay(overlay)(a0)
* GL
SDL_GL_LoadLibrary(path)(a0)
SDL_GL_GetProcAddress(proc)(a0)
SDL_GL_SetAttribute(attr,value)(d0/d1)
SDL_GL_GetAttribute(attr,value)(d0/a0)
SDL_GL_SwapBuffers()()
SDL_GL_UpdateRects(numrects,rects)(d0/a0)
SDL_GL_Lock()()
SDL_GL_Unlock()()
* WM 
SDL_WM_SetCaption(title,icon)(a0/a1)
SDL_WM_GetCaption(title,icon)(a0/a1)
SDL_WM_SetIcon(icon,mask)(a0/a1)
SDL_WM_IconifyWindow()()
SDL_WM_ToggleFullScreen(surface)(a0)
SDL_WM_GrabInput(mode)(d0)
* timer
SDL_GetTicks()()
SDL_Delay(ms)(d0)
SDL_SetTimer(interval,callback)(d0/a0)
SDL_AddTimer(interval,callback,param)(d0/a0/a1)
SDL_RemoveTimer(t)(d0)
* events
SDL_PumpEvents()()
SDL_PollEvent(event)(a0)
SDL_WaitEvent(event)(a0)
SDL_PeepEvents(events,numevents,action,mask)(a0/d0/d1/d2)
SDL_PushEvent(event)(a0)
SDL_SetEventFilter(filter)(d0)
SDL_GetEventFilter()()
SDL_EventState(type,state)(d0/d1)
*joystick
SDL_NumJoysticks()()
SDL_JoystickName(device_index)(d0)
SDL_JoystickOpen(device_index)(d0)
SDL_JoystickOpened(device_index)(d0)
SDL_JoystickIndex(joystick)(a0)
SDL_JoystickNumAxes(joystick)(a0)
SDL_JoystickNumBalls(joystick)(a0)
SDL_JoystickNumHats(joystick)(a0)
SDL_JoystickNumButtons(joystick)(a0)
SDL_JoystickUpdate()()
SDL_JoystickEventState(state)(d0)
SDL_JoystickGetAxis(joystick,axis)(a0/d0)
SDL_JoystickGetHat(joystick,hat)(a0/d0)
SDL_JoystickGetBall(joystick,ball,dx,dy)(a0/d0/a1/a2)
SDL_JoystickGetButton(joystick,button)(a0/d0)
SDL_JoystickClose(joystick)(a0)
*keyboard
SDL_EnableUNICODE(enable)(d0)
SDL_EnableKeyRepeat(delay,interval)(d0/d1)
SDL_GetKeyState(numkeys)(a0)
SDL_GetModState()()
SDL_SetModState(modstate)(d0)
SDL_GetKeyName(key)(d0)
*mouse
SDL_GetMouseState(x,y)(a0/a1)
SDL_GetRelativeMouseState(x,y)(a0/a1)
SDL_WarpMouse(x,y)(d0/d1)
SDL_CreateCursor(data,mask,w,h,hot_x,hot_y)(a0/a1/d0/d1/d2/d3)
SDL_SetCursor(cursor)(a0)
SDL_GetCursor()()
SDL_FreeCursor(cursor)(a0)
SDL_ShowCursor(toggle)(d0)
*app
SDL_GetAppState()()
*error
SDL_SetErrorA(fmt,arglist)(a0/a1)
SDL_GetError()()
SDL_ClearError()()
*audio
SDL_AudioInit(driver_name)(a0)
SDL_AudioQuit()()
SDL_AudioDriverName(namebuf,maxlen)(a0/d0)
SDL_OpenAudio(desired,obtained)(a0/a1)
SDL_GetAudioStatus()()
SDL_PauseAudio(pause_on)(d0)
SDL_LoadWAV_RW(src,freesrc,spec,audio_buf,audio_len)(a0/d0/a1/a2/a3)
SDL_FreeWAV(audio_buf)(a0)
SDL_BuildAudioCVT(cvt,src_format,src_channels,src_rate,dst_format,dst_channels,dst_rate)(a0/d0/d1/d2/d3/d4/d5)
SDL_ConvertAudio(cvt)(a0)
SDL_MixAudio(dst,src,len,volume)(a0/a1/d0/d1)
SDL_LockAudio()()
SDL_UnlockAudio()()
SDL_CloseAudio()()
*thread
SDL_CreateThread(fn,data)(a0/a1)
SDL_ThreadID()()
SDL_GetThreadID(thread)(a0)
SDL_WaitThread(thread,status)(a0/a1)
SDL_KillThread(thread)(a0)
* version
SDL_Linked_Version()()
* extensions
SDL_SoftStretch(src,srcrect,dest,dstrect)(a0/a1/a2/a3)
##end
